AutoLISP(LSP) 파일을 만들고 파일에 코드 문을 추가한 후 Visual Studio Code를 AutoCAD에 연결하고 Visual Studio Code에서 제공하는 많은 디버그 도구를 사용하여 사용자 지정 기능을 단계별로 살펴볼 수 있습니다.
참고:
AutoCAD LT의 AutoLISP 프로그램 디버깅은
Microsoft VS(Visual Studio) 코드용 AutoLISP 확장 프로그램에서 지원되지 않습니다.
LSP 파일을 디버깅하기 전에 먼저 디버깅할 LSP 파일을 여는 것이 좋습니다.
현재 편집기 창에서 열린 LSP 파일은 비주얼 스튜디오 코드가 디버깅을 위해 AutoCAD에 처음 연결되면 AutoCAD에 로드됩니다.
다음 단계에서는 비주얼 스튜디오 코드에서 Create-LSP-Tutorial.lsp 파일을 여는 방법을 설명합니다.
LSP 파일 폴더가 열리지 않으면 파일 메뉴 > 폴더 열기/열기를 클릭합니다.
그런 다음 LSP 파일 폴더를 찾아 선택합니다.
AutoLISP 확장이 올바르게 구성되고 현재 편집기 창에 LSP 파일이 열려 있으면 비주얼 스튜디오 코드로 LSP 파일에 저장된 AutoLISP 코드 문을 디버깅할 준비가 됩니다.
중단점을 사용하면 코드 문이 실행되는 동안 중단할 수 있습니다.
실행이 중단되면 다음을 수행할 수 있습니다.
다음 단계에서는 현재 편집기 창에 열린 Create-LSP-Tutorial.lsp 파일에 중단점을 추가하는 방법을 설명합니다.
중단점으로 인해 실행이 중단되면 변수에 현재 값이 할당되거나 코드 문으로 반환되는 값을 볼 수 있습니다.
이전 섹션에서는 두 가지 다른 중단점을 설정했습니다.
다음 단계에서는 이러한 중단점을 활용하여 코드 실행을 중단하고 변수에 할당된 값을 확인합니다.
사용자 지정 프로그램을 디버깅하는 동안 수정해야 하는 오류가 발생하는 것은 피할 수 없는 일입니다.
다음 단계에서는 Visual Studio 코드로 디버깅하는 동안 드로라인 함수를 변경하고 LSP 파일을 AutoCAD로 다시 로드하는 방법을 설명합니다.
;; Draws a line between two points
(defun c:drawline ( / pt1 pt2 sv_clayer) ;; Declared local variables
;; Store the current and create a new layer
(setq sv_clayer (getvar "clayer"))
(command "_.-layer" "_m" "Object" "_c" "5" "" "")
;; Prompt for two points
(setq pt1 (getpoint "\nSpecify start point of line: ")
pt2 (getpoint pt1 "\nSpecify end point of line: ")
)
;; Check to see if the user specified two points
(if (and pt1 pt2)
(command "_.line" pt1 pt2 "")
(prompt "\nInvalid or missing point(s)")
)
;; Restore the previous layer
(setvar "clayer" sv_clayer)
;; Exit quietly
(princ)
)
비주얼 스튜디오 코드는 현재 도면에서 LSP 파일을 로드하기 전에
AutoCAD에서 연결을 끊은 다음 동일한 AutoCAD 프로세스에 다시 연결합니다.
LSP 파일 디버깅을 완료한 후에는 AutoCAD에서 Visual Studio 코드의 연결을 끊어야 합니다.